class Solution {
public:
    bool canConstruct(string ransomNote, string magazine) {
      unordered_map<char,int> ans;
      for(char s : magazine){
        ans[s]++;
      }
      for(char sh : ransomNote){
        if(ans.find(sh) != ans.end() && ans[sh] > 0){
          ans[sh]--;
        }else{
          return false;
        }
      }
      return true;
    }
};
